package com.ympc.mapper;

import com.ympc.pojo.StudentAssignment;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface StudentAssignmentMapper {
    // 根据学生ID获取所有作业提交记录
    List<StudentAssignment> findByStudentId(Integer studentId);
    
    // 根据作业ID获取所有提交记录
    List<StudentAssignment> findByAssignmentId(Integer assignmentId);
    
    // 根据作业ID和学生ID获取提交记录
    StudentAssignment findByAssignmentIdAndStudentId(@Param("assignmentId") Integer assignmentId, 
                                                     @Param("studentId") Integer studentId);
    
    // 根据ID获取提交记录
    StudentAssignment findById(Integer id);
    
    // 插入提交记录
    int insert(StudentAssignment studentAssignment);
    
    // 更新提交记录
    int update(StudentAssignment studentAssignment);
    
    // 根据班级ID获取该班级所有学生的作业提交
    List<StudentAssignment> findByClassId(Integer classId);
    
    // 根据作业ID和状态获取提交记录
    List<StudentAssignment> findByAssignmentIdAndStatus(@Param("assignmentId") Integer assignmentId, 
                                                        @Param("status") String status);
}

